package com.remote.ui.core;

import com.remote.common.command.handler.CommandContext;
import com.remote.common.exception.RemoteException;

import java.util.concurrent.ScheduledFuture;

/**
 * 控制器管理器
 */
public interface ControllerManager {

    void addComponent(ControllerComponent controllerComponent);

    ControllerStarter getStarter(String fxml);

    ScheduledFuture<?> getTaskOrRun(String taskName, long delay, long period, ControllerRunnable uiRunnable) throws RemoteException;

    CommandContext getCommandContext();


}
